List of Java APIs

There are three types of Java Programming Language Application Programming Interfaces (APIs) :

Third-parties can freely implement any JSR specifications for an official API (even for the core API of the language), providing that they conform to the Technology Compatibility Kit (TCK) for this JSR (the TCK is a suite of tests that checks conformance of implementations for a JSR). The result of this freedom is that many official APIs have more implementations than the Sun's Reference implementation (RI).

The following is a partial list of Application Programming Interfaces (APIs) for the Java Programming Language.

Contents

Official APIs

Java Platform, Standard Edition (Java SE)

Name Acronym Description and Version History Available from
Java Advanced Imaging JAI An API which provides a set of interfaces that support a high-level programming model allowing to manipulate images easily.
Java Communications API JCA
Java Data Objects JDO A specification of Java object persistence.
JavaHelp A full-featured, extensible help system that enables you to incorporate online help in applets, components, applications, operating systems, and devices.
Java Media Framework JMF An API that enables audio, video and other time-based media to be added to Java applications and applets.
Java Naming and Directory Interface JNDI An API for directory services.
Java Speech API JSAPI This API allows for speech synthesis and speech recognition.
Java 3D J3D A scene graph-based 3D API. available here
Java OpenGL JOGL A wrapper library for OpenGL. available here
Java Mail (none) A framework to build mail and messaging applications available here
Java USB for Windows (none) A USB communication of Java applications available here

Java Platform, Enterprise Edition (Java EE)

Bundled APIs (part of standard download)

Name Acronym Java package(s) that contain the API
Java Message Service JMS
JavaServer Faces JSF javax.faces

Optional APIs (downloaded separately)

Name Acronym Available from
Java API for XML-Based RPC JAX-RPC available here

Java Platform, Micro Edition (Java ME)

Name Acronym Available from
Connected Limited Device Configuration CLDC Reference implementation is available here
Java Telephony API available here

Unofficial APIs (Released by third parties)

This list is very incomplete, as the number of APIs available for the Java platform is overwhelming.

Rich Client Platforms
Office_compliant libraries
Compression
Development assistance
Numerical analysis
Game engines
Real-time libraries
Rendering libraries
Windowing libraries

Notes

See also